package com.media.entrance.config;

import com.alibaba.nacos.api.config.ConfigType;
import com.alibaba.nacos.api.config.annotation.NacosConfigurationProperties;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.context.annotation.Configuration;

@Data
@AllArgsConstructor
@NoArgsConstructor
@Configuration
@NacosConfigurationProperties(prefix = "custom-parameters", dataId = "media-entrance-custom-parameters", autoRefreshed = true, ignoreInvalidFields = true, type = ConfigType.YAML)
public class CustomParameters {
    private int redisKeepTimeout;
    private boolean isAgentReady;

    @Override
    public String toString() {
        return "CustomParmeters{" +
                "redisKeepTimeout=" + redisKeepTimeout +
                ", isAgentReady=" + isAgentReady +
                ", forwarderTagName='" + forwarderTagName + '\'' +
                ", recorderTagName='" + recorderTagName + '\'' +
                ", forwarderServiceName='" + forwarderServiceName + '\'' +
                ", recorderServiceName='" + recorderServiceName + '\'' +
                ", roomIdTagName='" + roomIdTagName + '\'' +
                ", deviceIdTagName='" + deviceIdTagName + '\'' +
                ", agentIdTagName='" + agentIdTagName + '\'' +
                ", queueNoTagName='" + queueNoTagName + '\'' +
                ", requestRouterTagName=" + requestRouterTagName +
                '}';
    }

    private String forwarderTagName;
    private String recorderTagName;

    public int getRedisKeepTimeout() {
        return redisKeepTimeout;
    }

    public void setRedisKeepTimeout(int redisKeepTimeout) {
        this.redisKeepTimeout = redisKeepTimeout;
    }

    public boolean isAgentReady() {
        return isAgentReady;
    }

    public void setAgentReady(boolean agentReady) {
        isAgentReady = agentReady;
    }

    public String getForwarderTagName() {
        return forwarderTagName;
    }

    public void setForwarderTagName(String forwarderTagName) {
        this.forwarderTagName = forwarderTagName;
    }

    public String getRecorderTagName() {
        return recorderTagName;
    }

    public void setRecorderTagName(String recorderTagName) {
        this.recorderTagName = recorderTagName;
    }

    public String getForwarderServiceName() {
        return forwarderServiceName;
    }

    public void setForwarderServiceName(String forwarderServiceName) {
        this.forwarderServiceName = forwarderServiceName;
    }

    public String getRecorderServiceName() {
        return recorderServiceName;
    }

    public void setRecorderServiceName(String recorderServiceName) {
        this.recorderServiceName = recorderServiceName;
    }

    public String getRoomIdTagName() {
        return roomIdTagName;
    }

    public void setRoomIdTagName(String roomIdTagName) {
        this.roomIdTagName = roomIdTagName;
    }

    public String getDeviceIdTagName() {
        return deviceIdTagName;
    }

    public void setDeviceIdTagName(String deviceIdTagName) {
        this.deviceIdTagName = deviceIdTagName;
    }

    public String getAgentIdTagName() {
        return agentIdTagName;
    }

    public void setAgentIdTagName(String agentIdTagName) {
        this.agentIdTagName = agentIdTagName;
    }

    public String getQueueNoTagName() {
        return queueNoTagName;
    }

    public void setQueueNoTagName(String queueNoTagName) {
        this.queueNoTagName = queueNoTagName;
    }

    public String getRequestRouterTagName() {
        return requestRouterTagName;
    }

    public void setRequestRouterTagName(String requestRouterTagName) {
        this.requestRouterTagName = requestRouterTagName;
    }

    private String forwarderServiceName;
    private String recorderServiceName;
    private String roomIdTagName;
    private String deviceIdTagName;
    private String agentIdTagName;
    private String queueNoTagName;
    private String requestRouterTagName;
}
